Do a case-insensitive string replacementΒΆ

Do a case-insensitive string replacement.
Behaves like S.replace(), but does so in a case-insensitive fashion.
import re

S = "PHP Exercises"
print("Original Text: ", S)

from_str = 'php'
to_str = 'Python'

pattern = re.compile(re.escape(from_str), re.IGNORECASE)
S1 = re.sub(pattern, to_str, S)

print("Using 'php' replace PHP")
print()
print("New Text: ", S1)

Output:

Original Text:  PHP Exercises
Using 'php' replace PHP
New Text:  Python Exercises